function g2 = dynamic_g2(T, y, x, params, steady_state, it_, T_flag)
% function g2 = dynamic_g2(T, y, x, params, steady_state, it_, T_flag)
%
% File created by Dynare Preprocessor from .mod file
%
% Inputs:
%   T             [#temp variables by 1]     double   vector of temporary terms to be filled by function
%   y             [#dynamic variables by 1]  double   vector of endogenous variables in the order stored
%                                                     in M_.lead_lag_incidence; see the Manual
%   x             [nperiods by M_.exo_nbr]   double   matrix of exogenous variables (in declaration order)
%                                                     for all simulation periods
%   steady_state  [M_.endo_nbr by 1]         double   vector of steady state values
%   params        [M_.param_nbr by 1]        double   vector of parameter values in declaration order
%   it_           scalar                     double   time period for exogenous variables for which
%                                                     to evaluate the model
%   T_flag        boolean                    boolean  flag saying whether or not to calculate temporary terms
%
% Output:
%   g2
%

if T_flag
    T = M15b.dynamic_g2_tt(T, y, x, params, steady_state, it_);
end
g2_i = zeros(54,1);
g2_j = zeros(54,1);
g2_v = zeros(54,1);

g2_i(1)=1;
g2_i(2)=1;
g2_i(3)=1;
g2_i(4)=1;
g2_i(5)=1;
g2_i(6)=1;
g2_i(7)=1;
g2_i(8)=1;
g2_i(9)=1;
g2_i(10)=1;
g2_i(11)=1;
g2_i(12)=1;
g2_i(13)=1;
g2_i(14)=1;
g2_i(15)=1;
g2_i(16)=2;
g2_i(17)=2;
g2_i(18)=2;
g2_i(19)=2;
g2_i(20)=2;
g2_i(21)=2;
g2_i(22)=2;
g2_i(23)=2;
g2_i(24)=2;
g2_i(25)=2;
g2_i(26)=2;
g2_i(27)=2;
g2_i(28)=2;
g2_i(29)=2;
g2_i(30)=2;
g2_i(31)=2;
g2_i(32)=2;
g2_i(33)=2;
g2_i(34)=2;
g2_i(35)=5;
g2_i(36)=5;
g2_i(37)=5;
g2_i(38)=5;
g2_i(39)=5;
g2_i(40)=5;
g2_i(41)=5;
g2_i(42)=5;
g2_i(43)=5;
g2_i(44)=7;
g2_i(45)=7;
g2_i(46)=7;
g2_i(47)=9;
g2_i(48)=9;
g2_i(49)=9;
g2_i(50)=9;
g2_i(51)=10;
g2_i(52)=10;
g2_i(53)=10;
g2_i(54)=10;
g2_j(1)=36;
g2_j(2)=51;
g2_j(3)=39;
g2_j(4)=99;
g2_j(5)=44;
g2_j(6)=179;
g2_j(7)=52;
g2_j(8)=55;
g2_j(9)=100;
g2_j(10)=60;
g2_j(11)=180;
g2_j(12)=103;
g2_j(13)=108;
g2_j(14)=183;
g2_j(15)=188;
g2_j(16)=206;
g2_j(17)=221;
g2_j(18)=197;
g2_j(19)=77;
g2_j(20)=207;
g2_j(21)=237;
g2_j(22)=52;
g2_j(23)=60;
g2_j(24)=180;
g2_j(25)=222;
g2_j(26)=213;
g2_j(27)=78;
g2_j(28)=223;
g2_j(29)=238;
g2_j(30)=69;
g2_j(31)=79;
g2_j(32)=229;
g2_j(33)=188;
g2_j(34)=239;
g2_j(35)=1;
g2_j(36)=7;
g2_j(37)=97;
g2_j(38)=9;
g2_j(39)=129;
g2_j(40)=103;
g2_j(41)=105;
g2_j(42)=135;
g2_j(43)=137;
g2_j(44)=39;
g2_j(45)=99;
g2_j(46)=103;
g2_j(47)=1;
g2_j(48)=7;
g2_j(49)=97;
g2_j(50)=103;
g2_j(51)=1;
g2_j(52)=7;
g2_j(53)=97;
g2_j(54)=103;
g2_v(1)=T(17)*T(22)-T(18)*T(23);
g2_v(2)=g2_v(1);
g2_v(3)=T(4)*T(39)-T(6)*T(40);
g2_v(4)=g2_v(3);
g2_v(5)=T(17)*T(36)-T(18)*T(6)*T(35);
g2_v(6)=g2_v(5);
g2_v(7)=T(1)*T(43)-T(5)*T(44);
g2_v(8)=T(22)*T(31)-T(23)*T(32);
g2_v(9)=g2_v(8);
g2_v(10)=T(1)*T(47)-T(5)*((-y(12))*T(35)*T(48)-T(48));
g2_v(11)=g2_v(10);
g2_v(12)=T(4)*(params(4)-1)*params(8)*T(49)-(params(2)*getPowerDeriv(y(7),params(7),2)+T(6)*(params(4)-1)*T(49));
g2_v(13)=T(31)*T(36)-T(32)*T(6)*T(35);
g2_v(14)=g2_v(13);
g2_v(15)=T(1)*T(52)-T(5)*T(35)*T(6)*T(35);
g2_v(16)=T(19)*T(26)-params(4)*T(19)*T(27);
g2_v(17)=g2_v(16);
g2_v(18)=T(9)*T(53)-T(12)*params(4)*T(53);
g2_v(19)=g2_v(18);
g2_v(20)=T(19)*T(38)-params(4)*T(19)*params(1)*T(11)*T(37);
g2_v(21)=g2_v(20);
g2_v(22)=T(44);
g2_v(23)=(-y(12))*T(35)*T(48)-T(48);
g2_v(24)=g2_v(23);
g2_v(25)=T(10)*T(56)-(1-params(3)+params(4)*T(10))*T(57);
g2_v(26)=T(26)*T(30)-T(27)*params(4)*T(30);
g2_v(27)=g2_v(26);
g2_v(28)=T(10)*T(60)-(1-params(3)+params(4)*T(10))*params(1)*((-y(15))*T(37)*T(61)-T(61));
g2_v(29)=g2_v(28);
g2_v(30)=T(9)*T(62)-T(12)*params(4)*T(62);
g2_v(31)=T(30)*T(38)-params(4)*T(30)*params(1)*T(11)*T(37);
g2_v(32)=g2_v(31);
g2_v(33)=T(35)*T(6)*T(35);
g2_v(34)=T(10)*T(65)-(1-params(3)+params(4)*T(10))*params(1)*T(37)*T(11)*T(37);
g2_v(35)=(-(T(14)*exp(y(9))*T(66)));
g2_v(36)=(-(exp(y(9))*T(28)*T(33)));
g2_v(37)=g2_v(36);
g2_v(38)=(-(T(14)*exp(y(9))*T(28)));
g2_v(39)=g2_v(38);
g2_v(40)=(-(T(13)*exp(y(9))*T(67)));
g2_v(41)=(-(T(13)*exp(y(9))*T(33)));
g2_v(42)=g2_v(41);
g2_v(43)=(-(T(13)*exp(y(9))*T(14)));
g2_v(44)=(-((-1)/(y(7)*y(7))));
g2_v(45)=g2_v(44);
g2_v(46)=(-T(49));
g2_v(47)=(-(T(14)*T(68)));
g2_v(48)=(-(T(29)*T(33)));
g2_v(49)=g2_v(48);
g2_v(50)=(-(T(15)*T(67)));
g2_v(51)=(-(T(16)*(1-params(4))*T(66)));
g2_v(52)=(-((1-params(4))*T(28)*T(34)));
g2_v(53)=g2_v(52);
g2_v(54)=(-(T(13)*(1-params(4))*T(69)));
g2 = sparse(g2_i,g2_j,g2_v,10,256);
end
